Fault-tolerant medium access control (mac)  address assignment in network elements

ABSTRACT

A network element includes a backplane, which includes a backplane memory holding first medium access control (MAC) address values. The network element further includes multiple tributary modules coupled to the backplane, which include network interfaces that are configured to communicate over network trunks using MAC addresses that are respectively assigned to the network interfaces. The network element further includes a common function module (CFM), which communicates with the tributary modules and the backplane memory via the backplane, and which includes a CFM memory holding second MAC address values. 
     The CFM is arranged to assign the MAC addresses to the network interfaces by selecting the MAC addresses from among the first MAC address values when the CFM is able to access the backplane memory, and by selecting the MAC addresses from among the second MAC address values when the CFM is unable to access the backplane memory.

FIELD OF THE INVENTION

The present invention relates generally to communication networks, andparticularly to methods and systems for assigning medium access control(MAC) addresses in network elements.

BACKGROUND OF THE INVENTION

Many methods are known in the art for providing fault tolerance andbackup in communication networks. For example, U.S. Pat. No. 6,775,278,whose disclosure is incorporated herein by reference, describes a methodfor ensuring that a single and consistent reply is made to an addressresolution protocol (ARP) request in a system of connected IP networks.When an adapter denoted A becomes active, the owning host sends an ARPadvertisement into the network over the adapter. If the advertisement isalso received at the sending host over a different adapter denoted B,the host knows that adapter B is on in the same physical network asadapter A. Adapter B can be designated as a backup adapter for A and Acan be designated as a backup adapter for B.

If adapter A fails or becomes inactive, the host resets the backupadapter field for any adapter it owns for which A is marked as thebackup adapter. If a backup adapter B has been designated for A, thehost also sends an ARP advertisement associating the medium accesscontrol (MAC) address of adapter B (MAC-B) with the Internet Protocol(IP) address of adapter A (IP-A). This method allows network connectionsoriginally served via adapter A to continue to operate non-disruptivelyover adapter B, and also provides access to the host for subsequent newconnections.

As another example, U.S. Pat. No, 6,760,859, whose disclosure isincorporated herein by reference, describes a method, program product,and apparatus for providing a non-disruptive takeover by a backupadapter when an adapter from a group of adapters connecting a dataprocessing system to a local area network (LAN) fails. The adapters arearranged in one or more groups, with each group having at least twomembers, one member being a backup adapter in the idle state.Primitives, in accordance with the IEEE 802.2 standard, are monitoredfor each adapter. When a failure is detected, the medium access control(MAC) address for the failed adapter is loaded to the backup adapter,and the backup adapter is placed in the active state to non-disruptivelytake over the failed adapter.

SUMMARY OF THE INVENTION

There is therefore provided, in accordance with an embodiment of thepresent invention, a network element, including:

a backplane including a backplane memory holding first medium accesscontrol (MAC) address values;

multiple tributary modules, which are coupled to the backplane and whichinclude network interfaces that are configured to communicate overnetwork trunks using MAC addresses that are respectively assigned to thenetwork interfaces; and

a common function module (CFM), which is coupled to communicate with thetributary modules and the backplane memory via the backplane, and whichincludes a CFM memory holding second MAC address values, and which isarranged to assign the MAC addresses to the network interfaces byselecting the MAC addresses from among the first MAC address values whenthe CFM is able to access the backplane memory, and by selecting the MACaddresses from among the second MAC address values when the CFM isunable to access the backplane memory.

In some embodiments, the tributary modules include at least a firsttributary module and a second tributary module, the first tributarymodule is configured to back-up the second tributary module, and the CFMis arranged to assign the MAC addresses used by the second tributarymodule to the first tributary module upon failure in the secondtributary module.

In a disclosed embodiment, the CFM includes first and second CFMs, thefirst CFM is selected to serve as a primary CFM, and the second CFM isselected to serve as a secondary CFM and to replace the primary CFM uponfailure in the primary CFM.

In another embodiment, each of the first and second CFMs is arranged tosense that only one of the first and second CFMs is able to access thebackplane memory, and to select the one of the first and second CFMsable to access the backplane memory as the primary CFM.

In yet another embodiment, the primary CFM is arranged to update thesecondary CFM with the MAC addresses selected to be assigned to thenetwork interfaces and with previously-performed MAC addressassignments, so as to enable the secondary CFM to replace the primaryCFM upon failure in the primary CFM.

In some embodiments, the network element includes a handshake interfaceinterconnecting the first and second CFMs, and each of the first andsecond CFMs is arranged to send over the handshake interface a messageindicating whether it is able to access the backplane memory. In anotherembodiment, the backplane memory includes first and second memories, andthe first and second CFMs are respectively arranged to access the firstand second memories.

In still another embodiment, each of the first and second CFMs isarranged to generate a backplane failure alert responsively todetermining that both of the first and second CFMs are unable to accessthe backplane memory. Additionally or alternatively, each of the firstand second CFMs is arranged to generate a CFM failure alert responsivelyto determining that only one of the first and second CFMs is unable toaccess the backplane memory.

There is additionally provided, in accordance with an embodiment of thepresent invention, a method for address assignment in a network element,including:

storing first medium access control (MAC) address values in a backplanememory of a backplane of the network element;

storing second MAC address values in a CFM memory of a common functionmodule (CFM) connected to the backplane;

using the CFM, selecting MAC addresses to be assigned to respectivenetwork interfaces of tributary modules in the network element fromamong the first values when the CFM is able to access the backplanememory and from among the second values when the CFM is unable to accessthe backplane memory;

assigning the selected MAC addresses to the network interfaces bycommunication between the CFM and the tributary modules via thebackplane; and

establishing communication via the network interfaces over networktrunks using the assigned MAC addresses.

There is also provided, in accordance with an embodiment of the presentinvention, a computer software product for address assignment used in acommon function module (CFM) of a network element, which includes abackplane including a backplane memory holding first MAC address valuesand multiple tributary modules connected to the backplane, wherein theCFM includes a CFM memory holding second MAC address values, the productincluding a computer-readable medium, in which program instructions arestored, which instructions, when read by a computer, cause the computerto assign MAC addresses to respective network interfaces in thetributary modules by communicating with the tributary modules via thebackplane, to select the assigned MAC addresses from among the firstvalues when the CFM is able to access the backplane memory and fromamong the second values when unable to access the backplane memory.

The present invention will be more fully understood from the followingdetailed description of the embodiments thereof, taken together with thedrawings in which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram that schematically illustrates a networkelement, in accordance with an embodiment of the present invention; and

FIG. 2 is a flow chart that schematically illustrates a method for MACaddress assignment, in accordance with an embodiment of the presentinvention.

DETAILED DESCRIPTION OF EMBODIMENTS Overview

Embodiments of the present invention provide improved methods andsystems for assigning medium access control (MAC) addresses in networkelements. In some embodiments, a network element comprises multipletributary modules, which are interconnected by a backplane. Eachtributary module comprises one or more network interfaces. MAC addressesare assigned flexibly to the network interfaces from a set ofpredetermined addresses. This flexible assignment enables, for example,a tributary module to replace another module in case of failure, whileretaining the MAC addresses used by the failed module.

MAC addresses are assigned by a common function module (CFM). In someembodiments, the network element comprises two CFMs arranged in aprotected configuration, with one module serving as a primary CFM andthe other serving as a secondary CFM. Sets of MAC addresses to beassigned to the different network interfaces are stored in memorydevices called inventories. One inventory is located in the backplane,and another inventory is located in each CFM. Typically but notnecessarily, each inventory holds a different set of MAC addresses.

Under normal operating conditions, the CFM (or the primary CFM, when twoCFMs are used) reads the MAC addresses stored in the backplane inventoryand assigns these addresses to the different network interfaces of thenetwork element. If the CFM is unable to access the backplane inventory,it uses the MAC addresses stored in its local inventory. In someembodiments, if only one of the CFMs installed in the network element isable to access the backplane inventory, this CFM is selected to be theprimary CFM. Typically, the primary CFM updates the secondary CFM withthe MAC addresses used and with the address assignments alreadyperformed. As a result, if the primary CFM fails and is replaced by thesecondary CFM, the secondary CFM can continue to use the same MACaddresses and assignments.

The methods and systems described herein enable flexible andfault-tolerant MAC address assignment in the network element. When usingthese methods and systems, MAC addresses can continue to be assigned inthe presence of CFM, backplane and tributary module failures. Protectionswitchovers of tributary modules and CFMs retain the currently-used MACaddresses and assignments.

Storing MAC addresses in the CFM inventories also reduces the likelihoodof having to replace a faulty backplane. Unlike CFMs and tributarymodules, which are usually field-replaceable, backplane replacement ismore complicated, and sometimes causes a long service disruption.

The methods and systems described herein enable simple andconstraint-free production and configuration processes. For example, theinventory of each CFM and backplane is typically pre-programmed duringproduction with a unique set of MAC addresses, irrespective of othermodules or of the particular network element in which the CFM orbackplane is to be installed.

System Description

FIG. 1 is a block diagram that schematically illustrates a networkelement (NE) 20, in accordance with an embodiment of the presentinvention. NE 20 may comprise a switch, a router, a concentrator or anyother element used in communication networks. NE 20 comprises aplurality of tributary modules 28, each serving one or more trunks 32.Tributary modules 28 may comprise, for example, time-divisionmultiplexing (TDM) modules that provide voice and video services,Ethernet modules that provide data services, modules that provideresilient packet ring (RPR) interfaces, or any other suitable module.Tributary modules 28 are connected to a backplane 36, which compriseshigh-speed backplane traces 40 that interconnect the different modules.In some embodiments, NE 20 is packaged in a shelf unit and modules 28connect to the backplane by plugging into slots of the shelf.

Each tributary module 28 comprises one or more network interfaces 30,which are used for communicating over trunks 32. Each network interfaceis identified by a unique MAC address. Typically, when a certaintributary module is plugged into the backplane, the network elementassigns the appropriate MAC addresses to the module. In someembodiments, each network element 20 selects and assigns MAC addressesto the different tributary modules from a unique set of addresses. Thedescription that follows assumes that the address set comprises a blockof successive MAC addresses. In alternative embodiments, however, anyother suitable address set can be used.

NE 20 is expected to provide a high level of reliability. The networkelement is often classified as carrier-class equipment, and as such itis designed with sufficient redundancy to avoid single points offailure. Additionally, the different modules in NE 20 arefield-replaceable, and may be hot swapped in case of failure.

In some cases, some or all of modules 28 are configured in a protectedconfiguration, in which a particular module 28 protects one or more ofthe other modules. When a certain protected module 28 fails, the backupmodule is automatically switched to replace it. As will be shown below,the methods and systems described herein enable switching from a failedtributary module to a backup module without changing the currently-usedMAC address assignments.

Backplane 36 comprises an inventory 56, referred to as a backplaneinventory. The backplane inventory comprises a suitable non-volatilememory device, which holds a definition of the set of MAC addresses tobe assigned to the different network interfaces of NE 20. Inventory 56may comprise, for example, a flash memory, an electrically erasable andprogrammable read only memory (E²PROM), or any other suitablenon-volatile memory device.

When the set of MAC addresses comprises a block of consecutive MACaddresses, the inventory may hold a more compact representation of theaddress set, such as a base address and a size of the block. In someembodiments, the inventory holds additional information, such as aserial number and a manufacturing date of the backplane. The informationis typically written into the backplane inventory during backplaneproduction.

The inventory can be dimensioned to have any suitable memory size,depending on the number of MAC addresses in the set, the way they arerepresented and the amount of additional information. For example,conventional non-volatile memory devices in the range of 64 to 2048bytes can be used. A typical application may use, for example, a set of512 successive MAC addresses stored in a 256-byte inventory.

In some embodiments, NE 20 comprises two common function modules (CFMs)44. Each CFM comprises a management processor 48, which controls thedifferent modules of the network element and handles network managementrequests. In particular, processor 48 assigns MAC addresses to thedifferent network interfaces in tributary modules 28. CFMs 44 plug intobackplane 36 and are typically field-replaceable. At any given time, oneCFM 44 serves as the active or primary CFM. The other CFM serves as asecondary CFM that backs-up the primary CFM.

The CFMs communicate with modules 28 via backplane traces 40. The CFMscommunicate with one another using a CFM handshake interface 52.Interface 52 typically comprises discrete signal lines that run ondedicated backplane traces on backplane 36, which are separate frombackplane traces 40. In some embodiments, the CFMs are alsointerconnected using a Ethernet control bus (not shown in the figure),which is often duplicated for redundancy.

Although the embodiments described herein refer mainly to configurationscomprising two CFMs, the methods and systems described herein can beused with any number of CFMs. In particular, the network element mayoperate with only a single CFM.

Typically, each processor 48 comprises a general-purpose processor,which is programmed in software to carry out the functions describedherein. The software may be downloaded to the processor in electronicform, over a network, for example, or it may alternatively be suppliedto the processor on tangible media, such as CD-ROM. Furtheralternatively, some elements of processor 48 may be implemented usinghardware or using a combination of hardware and software elements.

In order to provide reliable MAC address assignment and avoid singlepoints of failure, each of the two CFMs comprises an additionalinventory, referred to as a CFM inventory. The CFM inventories typicallycomprise non-volatile memory devices similar to the backplane inventory.The CFM inventories hold MAC address blocks similar to the address blockstored in the backplane inventory, although the address values andpossibly the size of the address block in each of the three inventoriesmay vary.

Under normal operating conditions (i.e., when no failures exist), theprimary CFM reads the content of the backplane inventory to obtain theaddress block assigned to NE 20. The primary CFM then assigns MACaddresses from the address block read from the backplane inventory tothe network interfaces of the network element. In some cases, however,the primary CFM is unable to read the address block from the backplaneinventory because of failure in the CFM and/or in the backplane. In suchcases, the primary CFM uses the address blocks stored in its localinventory, as will be described below.

The MAC address blocks and additional information is usually writteninto the CFM and backplane inventories during production. In manypractical cases, CFMs and backplanes are manufactured and configuredseparately, and there is no prior knowledge as to which two CFMs andwhich backplane will be installed in a particular network element.Moreover, CFMs and/or backplanes may be replaced as a result offailures. CFMs, and to some extent backplanes, may be transferred fromone network element to another. Thus, in order not to impose logisticalconstraints on the configuration of CFMs and backplanes, each backplaneand CFM inventory is usually assigned a different, unique address block.

MAC Address Assignment Method

As noted above, one of CFMs 44 serves as the primary CFM and handles theassignment of MAC addresses. Under normal operating conditions, theprimary CFM powers up, accesses the backplane inventory and uses theaddress block stored in the backplane inventory to assign MAC addressesto the various network interfaces in the network element. When theprimary CFM is not able to read the content of the backplane inventory,various methods and policies can be used to perform MAC addressassignment using the local CFM inventories of the two CFMs. An exemplaryaddress assignment method is described in FIG. 2 below.

FIG. 2 is a flow chart that schematically illustrates a method for MACaddress assignment, in accordance with an embodiment of the presentinvention. The method describes the sequence of operations performed bya particular CFM. When two CFMs of a network element carry out themethod of FIG. 2, their combined operation results in fault-tolerant MACaddress assignment.

The method begins with the CFM powering-up, at a power-up step 70. TheCFM is usually powered-up automatically when it is plugged into theappropriate slot of backplane 36. At this point, the newly powered-upCFM is not aware of the existence or status of its neighbor CFM in thenetwork element. Thus, the CFM is initially set to operate as thesecondary CFM, at an initial secondary setting step 72.

The CFM reads the content of the backplane inventory, at a backplanereading step 74, and checks whether the inventory content was readsuccessfully, at a read checking step 76. If the backplane inventorycontent was read successfully, the CFM notifies the successful read onCFM handshake interface 52, at a success notification step 78. The CFMcaches the content of the backplane inventory locally, for example in afree memory space in its local memory device. Typically, however, theCFM does not overwrite the content of its local CFM inventory.

The CFM checks whether the neighbor CFM is active (i.e., serves asprimary), by communicating over interface 52, at a first neighborchecking step 80. If the neighbor CFM is not active, the CFM begins tooperate as a primary CFM, at a first activation step 82. The CFM usesthe address block read from the backplane inventory at step 74 above forperforming MAC address assignments. In some embodiments, the CFM reportsits primary role, for example by sending a message to a networkmanagement system and/or by providing a local indication, e.g., using afront panel light emitting diode (LED). If, on the other hand, theneighbor CFM is already active, the CFM begins to function as asecondary CFM, at a secondary operation step 84.

If the CFM is not able to successfully read the content of the backplaneinventory, as concluded by read checking step 76 above, the CFM sends afailure notification over the CFM handshake interface, at a failurenotification step 86. The CFM may also generate an appropriate alarm.The CFM then checks whether the neighbor CFM is active, at a secondneighbor checking step 88. If the neighbor CFM is already active, theCFM reverts to secondary operation, at secondary operation step 84.

If the neighbor CFM is not found to be active, the CFM checks whetherthe neighbor CFM exists, i.e., plugged-in and powered-up, at a neighborexistence checking step 90. If the neighbor CFM does not exist, the CFMbegins to operate as a primary CFM, at a second activation step 92. Inthis case, however, the CFM does not have access to the informationstored in the backplane inventory. Therefore, the CFM uses the addressblock stored in its local CFM inventory for performing MAC addressassignments.

If step 90 above concludes that the neighbor CFM exists but is notactive, the CFM waits for a predetermined time-out interval, at awaiting step 94. Since some CFMs may be slower than others in waking upand/or reading the backplane inventory, the CFM gives the neighbor CFMan opportunity to complete its initialization process and become theprimary CFM. The time out interval is typically defined based on themaximum time duration from wake-up until successful reading of thebackplane inventory.

When the time out expires, the CFM checks again whether the neighbor CFMis active, at a third neighbor checking step 96. If the neighbor CFM isnow active, the CFM sets itself to become the secondary CFM, atsecondary operation step 84.

Otherwise, the CFM checks whether the neighbor CFM has successfully readthe content of the backplane inventory, at a neighbor read checking step98. If the neighbor CFM has successfully obtained the address block fromthe backplane inventory, the CFM lets the neighbor CFM become theprimary CFM, and reverts to secondary operation at step 84 above.

If the neighbor CFM was not able to read the address block from thebackplane inventory, the CFM concludes that both CFMs are now at thesame status: both CFMs are powered up and potentially ready to becomethe primary CFM, but they both have no access to the backplaneinventory. In such a case, the CFMs use a tie-breaker mechanism todetermine which of the two is to become the primary CFM. In the presentexample, the backplane slots are numbered, the CFMs plug into successiveslots, and the CFM plugged into the odd-numbered slot is arbitrarilychosen to become the primary CFM. Alternatively, any other suitabletie-breaking criterion can be used, such as criteria based on slotnumbers, CFM serial numbers or any other parameter.

In the present example, the CFM checks whether the slot number it isplugged into is even, at a slot number checking step 100. If the slotnumber is even, the CFM reverts to secondary operation at step 84 above.Otherwise, the CFM sets itself to operate as the primary CFM, at secondactivation step 92. As noted above, in this case the CFM uses theaddress block stored in its local CFM inventory.

The method of FIG. 2 is an exemplary sequence of steps, which may beperformed by the CFM. In alternative embodiments, any other suitablesequence of operations may be performed to ensure that one of the CFMsbegins to operate as a primary CFM and the other operates as a secondaryCFM. The primary CFM uses the MAC addresses stored in the backplaneinventory, as long as it is able to read them. Otherwise, the primaryCFM uses the addresses stored in its local inventory.

In some embodiments, once one of the CFMs begins to operate as theprimary CFM, it mirrors the MAC address block used and the MAC addressassignments already performed to the secondary CFM. If the primary CFMfails later and is replaced by the secondary CFM, the secondary CFM isable to continue using the same address block and retain the existingassignments. Mirroring of MAC addresses and prior assignments can beperformed, for example, over the Ethernet control bus connecting the twoCFMs.

Thus, the methods described herein enable seamless and fault-tolerantMAC address assignment in the network element. The MAC addressassignment is agnostic to protection switchover among differenttributary modules and between the two CFMs. Moreover, in the presentexample, once a particular address block is selected, whether from thebackplane inventory or from a CFM inventory, the network element willcontinue to use this address block even though CFMs may be replaced overtime.

In some embodiments, when failure is detected, the reading attemptsperformed by the two CFMs are used to isolate and determine the faultymodule. For example, if both CFMs fail to access the backplaneinventory, the backplane is assumed to be faulty. If only one of theCFMs fails to read the backplane inventory, this CFM is assumed faulty.

Failing to identify the faulty module correctly may sometimes causeduplicate MAC addresses. For example, assume a certain CFM has a faultybackplane interface, but it is not identified as faulty. When this CFMis the first CFM to be installed in a particular network element, itwill assign MAC addresses from the address block of its local inventory.This address block will be retained when another CFM is installed. Ifthe faulty CFM is removed and transferred to a second network element,it will again begin to use its locally stored MAC address block, whichis the same as the address block used in the first network element. As aresult of this sequence of events, two network elements will assign MACaddresses from the same address block. As a precaution, a CFM may beprogrammed with a new address block before it is installed in anothernetwork element, regardless of whether it is faulty or not.

The fault-tolerance of the network element can be further improved byusing a dual backplane inventory. For example, in some embodiments thebackplane may comprise two separate inventories using two separate databuses. Each CFM accesses a different backplane inventory. Typically butnot necessarily, the two backplane inventories are programmed duringproduction with the same address block.

Although the embodiments described herein mainly address MAC addressassignment in network elements, the principles of the present inventioncan also be used for providing fault-tolerant configuration in any otherscenario in which a network element should power up with certainconfiguration values. For example, network elements are sometimesmanaged using the well-known transaction language one (TL1) managementprotocol. In TL1, each network element is assigned a unique terminalidentifier (TID). The methods and systems described herein can be usedto provide fault-tolerant TID assignment. For example, a default TIDvalue may be based on the serial number of the backplane. If thisdefault value cannot be read by the CFMs, an alternative TID valuestored in the primary CFM can be used instead.

It will thus be appreciated that the embodiments described above arecited by way of example, and that the present invention is not limitedto what has been particularly shown and described hereinabove. Rather,the scope of the present invention includes both combinations andsub-combinations of the various features described hereinabove, as wellas variations and modifications thereof which would occur to personsskilled in the art upon reading the foregoing description and which arenot disclosed in the prior art.

1. A network element, comprising: a backplane comprising a backplanememory holding first medium access control (MAC) address values;multiple tributary modules, which are coupled to the backplane and whichcomprise network interfaces that are configured to communicate overnetwork trunks using MAC addresses that are respectively assigned to thenetwork interfaces; and a common function module (CFM), which is coupledto communicate with the tributary modules and the backplane memory viathe backplane, and which comprises a CFM memory holding second MACaddress values, and which is arranged to assign the MAC addresses to thenetwork interfaces by selecting the MAC addresses from among the firstMAC address values when the CFM is able to access the backplane memory,and by selecting the MAC addresses from among the second MAC addressvalues when the CFM is unable to access the backplane memory.
 2. Thenetwork element according to claim 1, wherein the tributary modulescomprise at least a first tributary module and a second tributarymodule, wherein the first tributary module is configured to back-up thesecond tributary module, and wherein the CFM is arranged to assign theMAC addresses used by the second tributary module to the first tributarymodule upon failure in the second tributary module.
 3. The networkelement according to claim 1, wherein the CFM comprises first and secondCFMs, wherein the first CFM is selected to serve as a primary CFM, andwherein the second CFM is selected to serve as a secondary CFM and toreplace the primary CFM upon failure in the primary CFM.
 4. The networkelement according to claim 3, wherein each of the first and second CFMsis arranged to sense that only one of the first and second CFMs is ableto access the backplane memory, and to select the one of the first andsecond CFMs able to access the backplane memory as the primary CFM. 5.The network element according to claim 3, wherein the primary CFM isarranged to update the secondary CFM with the MAC addresses selected tobe assigned to the network interfaces and with previously-performed MACaddress assignments, so as to enable the secondary CFM to replace theprimary CFM upon failure in the primary CFM.
 6. The network elementaccording to claim 3, and comprising a handshake interfaceinterconnecting the first and second CFMs, wherein each of the first andsecond CFMs is arranged to send over the handshake interface a messageindicating whether it is able to access the backplane memory.
 7. Thenetwork element according to claim 3, wherein the backplane memorycomprises first and second memories, and wherein the first and secondCFMs are respectively arranged to access the first and second memories.8. The network element according to claim 3, wherein each of the firstand second CFMs is arranged to generate a backplane failure alertresponsively to determining that both of the first and second CFMs areunable to access the backplane memory.
 9. The network element accordingto claim 3, wherein each of the first and second CFMs is arranged togenerate a CFM failure alert responsively to determining that only oneof the first and second CFMs is unable to access the backplane memory.10. A method for address assignment in a network element, comprising:storing first medium access control (MAC) address values in a backplanememory of a backplane of the network element; storing second MAC addressvalues in a CFM memory of a common function module (CFM) connected tothe backplane; using the CFM, selecting MAC addresses to be assigned torespective network interfaces of tributary modules in the networkelement from among the first values when the CFM is able to access thebackplane memory and from among the second values when the CFM is unableto access the backplane memory; assigning the selected MAC addresses tothe network interfaces by communication between the CFM and thetributary modules via the backplane; and establishing communication viathe network interfaces over network trunks using the assigned MACaddresses.
 11. The method according to claim 10, wherein the tributarymodules comprise at least a first tributary module and a secondtributary module, wherein the first tributary module is configured toback-up the second tributary module, and wherein assigning the selectedMAC addresses comprises assigning the MAC addresses used by the secondtributary module to the first tributary module upon failure in thesecond tributary module.
 12. The method according to claim 10, whereinthe CFM comprises first and second CFMS, and comprising selecting thefirst CFM to serve as a primary CFM, selecting the second CFM to serveas a secondary CFM and replacing the primary CFM with the secondary CFMupon failure in the primary CFM.
 13. The method according to claim 12,wherein selecting the first CFM to serve as the primary CFM comprisesselecting the first CFM responsively to sensing that only the first CFMis able to access the backplane memory.
 14. The method according toclaim 12, and comprising updating the secondary CFM by the primary CFMwith the MAC addresses selected to be assigned to the network interfacesand with previously-performed MAC address assignments, so as to enablethe secondary CFM to replace the primary CFM upon failure in the primaryCFM.
 15. The method according to claim 12, and comprisinginterconnecting the first and second CFMs by a handshake interface, andsending over the handshake interface messages indicating whether each ofthe first and second CFMs is able to access the backplane memory. 16.The method according to claim 12, wherein storing the first MAC addressvalues comprises storing separate value sets in first and secondmemories in the backplane, and respectively accessing the first andsecond memories by the first and second CFMs.
 17. The method accordingto claim 12, and comprising generating a backplane failure alertresponsively to determining that both of the first and second CFMs areunable to access the backplane memory.
 18. The method according to claim12, and comprising generating a CFM failure alert responsively todetermining that only one of the first and second CFMs is unable toaccess the backplane memory.
 19. A computer software product for addressassignment used in a common function module (CFM) of a network element,which includes a backplane including a backplane memory holding firstMAC address values and multiple tributary modules connected to thebackplane, wherein the CFM includes a CFM memory holding second MACaddress values, the product comprising a computer-readable medium, inwhich program instructions are stored, which instructions, when read bya computer, cause the computer to assign MAC addresses to respectivenetwork interfaces in the tributary modules by communicating with thetributary modules via the backplane, to select the assigned MACaddresses from among the first values when the CFM is able to access thebackplane memory and from among the second values when unable to accessthe backplane memory.